package pruebasUnitarias.pruebasPatronesMovimiento;

import movimiento.*;
import movimiento.patrones.Circular;
import org.junit.*;
import auxiliares.Vector;

public class CircularTest {
	private PatronMovimiento movimiento;
	private Posicion posInicial;
	private Vector velocidad;

	@Before
	public void setUp() {
		movimiento = new Circular(5);
		posInicial = new Posicion(40, 30);
		velocidad = new Vector(0, 0);
	}

	@Test
	public void testCircular() {
		Posicion posRetorno;
		/* Da una vuelta completa y deberia volver a la posicion inicial */
		posRetorno = movimiento.calcularNuevaPosicion(posInicial, velocidad);
		for (int i = 0; i < 15; i++) {
			posRetorno = movimiento
					.calcularNuevaPosicion(posRetorno, velocidad);
		}
		Assert.assertTrue(posRetorno.equals(posInicial));

		System.out.println("El movimiento circular funciona bien");
	}

}
